package org.colswe.testingProject.control;

import java.util.Collection;
import javax.persistence.Persistence;
import org.colswe.testingProject.dao.StudentDao;
import org.colswe.testingProject.entity.Student;

/**
 * Clase StudentControl para el manejo de Student.
 *
 * @author andres
 */
public class StudentControl {

    /**
     * Dao para el manejo de Student.
     */
    private StudentDao dao;

    /**
     * Constructor de StudentControl.
     */
    public StudentControl() {
        dao = new StudentDao(Persistence.createEntityManagerFactory("TPPU"));
    }

    /**
     * Crear un Student.
     *
     * @param toCreate Student a crear.
     * @return Verdadero si se creó correctamente.
     */
    public boolean create(Student toCreate) {
        return dao.create(toCreate);
    }

    /**
     * Actualizar un Student.
     *
     * @param toUpdate Student a actualizar.
     * @return Verdadero si se actualizó correctamente.
     */
    public boolean update(Student toUpdate) {
        return dao.update(toUpdate);
    }

    /**
     * Leer un Student.
     *
     * @param toRead Student a leer.
     * @return Student leído.
     */
    public Student read(Student toRead) {
        return dao.read(toRead);
    }

    /**
     * Buscar todos los Student.
     *
     * @return Lista con todos los Student.
     */
    public Collection<Student> readAll() {
        return dao.readAll();
    }
    /**
     * Metodo para borrar un estudiante.
     * @param toDelete estudiante a borrar.
     * @return Verdadero si es correcto.
     */
    public boolean delete(Student toDelete){
	return dao.delete(toDelete);
    }
}
